package com.example.test.advice.第五章_数组和集合.建议71_推荐使用subList处理局部列表;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class Client {

    public static void main(String[] args) {
        delete();
        deleteBySubList();
    }

    //常规做法
    public static void delete(){
        //初始化一个固定长度，不可变列表
        List<Integer> initData = Collections.nCopies(100,0);
        //转换为可变列表
        List<Integer> list = new ArrayList<>(initData);

        //遍历，删除符合条件的元素
        for(int i = 0, size = list.size();i<size;i++){
            if(i>=20&&i<=30){
                 list.remove(i);
            }
        }

        System.out.println(list.size());
    }

    public static void deleteBySubList(){
        //初始化一个固定长度，不可变列表
        List<Integer> initData = Collections.nCopies(100,0);
        //转换为可变列表
        List<Integer> list = new ArrayList<>(initData);
        list.subList(20,31).clear();
        System.out.println(list.size());
    }
}
